package com.saer.server.network.logica.mensajes;

import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;

public abstract class Mensaje {

	protected String tipo;
	protected int id_msj;
	protected int id_origen;
	protected int id_destino;
	protected String cuerpo = "";

	public int getIDmensaje() {
		return id_msj;
	}

	public int getIDorigen() {
		return id_origen;
	}

	public int getIDdestino() {
		return id_destino;
	}

	public String getCuerpo() {
		return cuerpo;
	}

	public void setIDmensaje(int id_msj) {
		this.id_msj = id_msj;
	}

	public void setIDorigen(int id) {
		this.id_origen = id;
	}

	public void setIDdestino(int id) {
		this.id_destino = id;
	}

	public void setCuerpo(String cuerpo) {
		this.cuerpo = cuerpo;
	}

	public byte[] toByte() throws IOException {
		ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
		DataOutputStream out = new DataOutputStream(byteStream);

		out.writeUTF("SAER");
		out.writeUTF(tipo);
		out.writeInt(id_msj);
		out.writeInt(id_origen);
		out.writeInt(id_destino);
		out.writeUTF(cuerpo);

		out.flush();
		out.close();

		return byteStream.toByteArray();
	}
}
